<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>注册页面</h1>
<form action="">
    <!--@blur 是vue框架添加事件的方式 等效 onblur-->
    <input type="text" name="username" @blur="blurfn()" placeholder="用户名">
    <span>{{info}}</span><br>
    <input type="text" name="password" placeholder="密码"><br>
    <input type="text" name="nick" placeholder="昵称"><br>
    <input type="text" name="age" placeholder="年龄"><br>
    <input type="button" value="注册" @click="reg()">
</form>
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script>
    let vm =new Vue({
        el:"form",
        data:{
            info:""
        },
        methods:{
            //vue事件调用的方法必须声明在这里
            blurfn:function () {
                //alert("编辑完成！");
                //得到form表单中的数据
                let data =new FormData(document.querySelector("form"));
                //从data里面得到用户输入的用户名

                let username = data.get("username");
                if (username==""){
                    vm.info = "用户名不能为空！";
                    return;
                }
                // let username =data.get("username");
                // if (username==""){
                //     vm.info="用户名不能为空！";
                //     return;
                // }
                //发出异步post请求
                axios.post("/check",data).then(function (response) {
                    //把服务器返回的数据给到info变量 页面会自动改变
                    vm.info=response.data;
                })
            },
            reg:function () {
                    let data =new FormData(document.querySelector("form"));
                    //发出异步post请求
                axios.post("/reg",data).then(function (response) {

                    if (response.data==1){//1一般代表成功
                        alert("注册成功！");
                        //浏览器向首页发送请求
                        location.href="/";
                    }else {//2 代表用户名已存在
                        alert("用户名已存在！")
                    }
                })
            }
        }
    })
</script>

</body>
</html>